package org.kyw.basic.service;

import org.kyw.basic.query.BaseQuery;
import org.kyw.basic.util.PageList;

import java.util.List;

/**
 * 公共的service接口
 */
public interface IBaseService<T> {
    //保存一条记录
    void add(T t);

    //修改一条记录
    void update(T t);

    //删除一条记录
    void remove(Long id);

    //查询一条记录
    T queryById(Long id);

    //查询所有记录
    List<T> queryAll();

    //分页 + 高级查询
    PageList<T> queryPage(BaseQuery query);

    //批量删除数据
    void batchRemove(List<Long> ids);
}
